Imports Castle.ActiveRecord

Namespace Model
    ''' <summary>
    '''	Gerado por MyGeneration usando o template ActiveRecord Object Mapper-1.0.3
    '''	Criado em 14/08/2010 00:29:39
    ''' </summary>
    ''' <remarks></remarks>
    <Serializable(), ActiveRecord("pais", DynamicUpdate:=True)> _
    Public Class Pais
        Inherits ActiveRecordBase(Of Pais)

        Private _cd_pais As Integer

        Private _pais_nome As String
        Private _pais_codigo_ibge As Decimal
        Private _pais_codigo_banco_central As Decimal
        Private _pais_codigo_sci As Decimal

        Private _Pessoas As IList(Of Pessoa)
        Private _Enderecos As IList(Of Endereco)
        'Private _Pessoas As Model.Pessoa
        Private _Mercado As Mercado

        <PrimaryKey(PrimaryKeyType.Sequence, SequenceName:="pais_cd_pais_seq")> _
        Public Property cd_pais() As Integer
            Get
                Return _cd_pais
            End Get
            Set(ByVal value As Integer)
                _cd_pais = value
            End Set
        End Property

        '<OneToOne()> _
        <BelongsTo("cd_mercado")> _
        Public Property Mercado() As Mercado
            Get
                Return _Mercado
            End Get
            Set(ByVal value As Mercado)
                _Mercado = value
            End Set
        End Property

        <HasMany(GetType(Pessoa), Table:="pessoa", ColumnKey:="cd_pais", Inverse:=True, Lazy:=True)> _
        Public Property Pessoa() As IList(Of Pessoa)
            Get
                Return _Pessoas
            End Get
            Set(ByVal value As IList(Of Pessoa))
                _Pessoas = value
            End Set
        End Property
        '<OneToOne()> _
        'Public Property Pessoa() As Model.Pessoa
        '    Get
        '        Return _Pessoas
        '    End Get
        '    Set(ByVal value As Model.Pessoa)
        '        _Pessoas = value
        '    End Set
        'End Property

        <HasMany(GetType(Endereco), Table:="endereco", ColumnKey:="cd_pais", Inverse:=True, Lazy:=True)> _
        Public Property Endereco() As IList(Of Endereco)
            Get
                Return _Enderecos
            End Get
            Set(ByVal value As IList(Of Endereco))
                _Enderecos = value
            End Set
        End Property

        <[Property]("pais_nome")> _
        Public Property pais_nome() As String
            Get
                Return _pais_nome
            End Get
            Set(ByVal value As String)
                _pais_nome = value
            End Set
        End Property

        <[Property]("pais_codigo_ibge")> _
        Public Property pais_codigo_ibge() As Decimal
            Get
                Return _pais_codigo_ibge
            End Get
            Set(ByVal value As Decimal)
                _pais_codigo_ibge = value
            End Set
        End Property

        <[Property]("pais_codigo_banco_central")> _
        Public Property pais_codigo_banco_central() As Decimal
            Get
                Return _pais_codigo_banco_central
            End Get
            Set(ByVal value As Decimal)
                _pais_codigo_banco_central = value
            End Set
        End Property

        <[Property]("pais_codigo_sci")> _
        Public Property pais_codigo_sci() As Decimal
            Get
                Return _pais_codigo_sci
            End Get
            Set(ByVal value As Decimal)
                _pais_codigo_sci = value
            End Set
        End Property

    End Class
End Namespace